package com.witmore.neutron.ai.web.controller.vo;

import lombok.Getter;
import lombok.Setter;

import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import java.io.Serial;
import java.io.Serializable;

/**
 * 合作咨询提交参数
 *
 * @author 豆子高
 * @since 2025-09-17
 */
@Getter
@Setter
public class CooperationInquirySubmitParam implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 公司名称
     */
    @NotBlank(message = "公司名称不能为空")
    @Size(max = 128, message = "公司名称长度不能超过128个字符")
    private String companyName;

    /**
     * 联系人姓名
     */
    @NotBlank(message = "联系人姓名不能为空")
    @Size(max = 64, message = "联系人姓名长度不能超过64个字符")
    private String contactName;

    /**
     * 手机号
     */
    @NotBlank(message = "手机号不能为空")
    @Size(max = 32, message = "手机号长度不能超过32个字符")
    private String phone;

    /**
     * 邮箱
     */
    @NotBlank(message = "邮箱不能为空")
    @Email(message = "邮箱格式不正确")
    @Size(max = 128, message = "邮箱长度不能超过128个字符")
    private String email;

    /**
     * 使用场景具体描述
     */
    @NotBlank(message = "使用场景描述不能为空")
    @Size(max = 2000, message = "使用场景描述长度不能超过2000个字符")
    private String businessDesc;

}